package com.altio.swing;



/**
 * Action listener, usually implemented to inform a {@link SelectionManager}
 * that a {@link SelectableComponent} has been selected/highlighted.
 * 
 * @author tomm
 * @altioapi all
 * 
 */
public interface SelectionActionListener {
  /**
   * Called to notify the implementation that a particular SelectableComponent
   * has been selected by the user
   * 
   * @param component
   *          Component that has been selected
   * @param multiselect
   *          true if the action should keep previous components selected.
   */
  public void selectActionPerformed(SelectableComponent component, boolean multiselect);

  /**
   * Called to notify the implementation that a particular SelectableComponent
   * has been highlighted/unhighlighted by the user
   * 
   * @param component
   *          Component that has been highlighted/unhighlighted
   * @param highlighted
   *          true if the component has been highlighted
   */
  public void highlightActionPerformed(SelectableComponent component, boolean highlighted);
}
